Multi-core processors are integrated circuits (IC) containing multiple processor cores. In general, a core is a processing unit such as a central processing unit (CPU), and processes executable modules (instructions or code) to provide one or more desired functions or applications. Multi-core processors often need to accept and process data generated by one or more external data sources such as, for example, analog-to-digital converters (ADC), sensor-arrays, etc. Simple bus-based data interface to processors may not be able to accommodate data collection from a large number of sources, especially when such data collection needs to performed in substantially parallel fashion.